//Because I was tired of swapping the orders on functions to get them to play nice

void handleMouseClick(int button, int state, int x, int y);
void handleMouseMotion(int x, int y);
void handleKeyboardEvent(unsigned char key, int x, int y);
void loadHeightMap(const char *fn, std::vector<int> &vertices, int &h, int &w, int &m);
void initGL();
void initODE();
void renderPlane(dVector4 equation, float size);
void handleCollisionBetween(dGeomID o0, dGeomID o1);
void nearCallback(void *data, dGeomID o0, dGeomID o1);
void renderScene();
void animate(int value);
void simulatePhysics(int value);
void sizeChanged(int w, int h);
void cleanup();
int main(int argc, char* argv[]);
